package net.siufung.core.model.enums;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import net.siufung.core.model.consts.RegexPool;

/**
 * 正则表达式枚举库
 * @author 陈建峰
 * @since 2022/5/11 3:02 下午
 */
@ToString
public enum RegexPoolEnum {

    /**
     * 登录名
     */
    LOGIN_NAME(RegexPool.LOGIN_NAME,
            "用户名允许以字母开头，并且字母数字下划线组合，长度为8-16字节！"),
    /**
     * 登录密码
     */
    LOGIN_PASSWORD(RegexPool.LOGIN_PASSWORD,
            "密码强度，最少8位，最多16个字符，包括至少1个大写字母，1个小写字母，1个数字，1个特殊字符[!@#$%^&*?]！"),
    /**
     * 手机号
     */
    MOBILE(RegexPool.MOBILE, "输入手机号格式不符合规范！"),
    /**
     * 手机号(严谨)
     */
    MOBILE_RIGOROUS(RegexPool.MOBILE_RIGOROUS, "输入手机号格式不符合规范！"),
    /**
     * 邮箱
     */
    EMAIL(RegexPool.EMAIL, "输入邮箱格式不符合规范！"),
    /**
     * 身份证号
     */
    ID_CARD_NUMBER(RegexPool.ID_CARD_NUMBER, "输入身份证格式不符合规范！"),
    /**
     * 统一社会信用代码
     */
    SOCIAL_CREDIT_CODE(RegexPool.SOCIAL_CREDIT_CODE, "统一社会信用代码格式不符合规范！"),
    /**
     * 中文名称
     */
    CHINESE_NAME(RegexPool.CHINESE_NAME, "中文名称格式不符合规范！"),;

    @Getter
    @Setter
    private String regex;
    @Getter
    @Setter
    private String message;

    RegexPoolEnum(String regex, String message) {
        this.regex = regex;
        this.message = message;
    }


}
